package com.njtoyo.taxi.admin.service.business.driver;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.njtoyo.taxi.admin.rest.presenter.business.driver.QuerySpecialRewardRuleDetailPresenter;
import com.njtoyo.taxi.admin.rest.presenter.business.driver.QuerySpecialRewardRuleListPresenter;
import com.njtoyo.taxi.admin.rest.presenter.business.driver.QuerySpecialRewardRulePickRidePresenter;
import com.njtoyo.taxi.admin.rest.wrapper.business.driver.*;
import com.taxi.entity.common.RestResult;

import java.util.List;

public interface DriverSpecialReward {

    RestResult<Boolean> createRule(CreateSpecialRewardRuleWrapper wrapper);

    RestResult<Boolean> updateRule(Long id, UpdateSpecialRewardRuleWrapper wrapper);

    RestResult<IPage<QuerySpecialRewardRuleListPresenter>> getRuleList(QuerySpecialRewardRuleListWrapper wrapper);

    RestResult<QuerySpecialRewardRuleDetailPresenter> getRuleDetail(Long id);

    RestResult<Boolean> randomTimeGiveSpecialReward(Long id, RandomTimeGiveSpecialRewardWrapper wrapper);

    RestResult<Boolean> giveDriverSpecialReward(GiveDriverSpecialRewardWrapper wrapper);

    RestResult<List<QuerySpecialRewardRulePickRidePresenter>> pickRideRank(QuerySpecialRewardRulePickRideWrapper wrapper);

}
